﻿<?xml version="1.0" encoding="utf-8"?>
<xsd:schema id="UIProcessDesignerSchema" targetNamespace="http://schemas.microsoft.com/dsltools/UIProcessDesigner" elementFormDefault="qualified" xmlns="http://schemas.microsoft.com/dsltools/UIProcessDesigner" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <!-- UIProcessForm -->
  <xsd:element name="uIProcessForm" type="UIProcessForm" />
  <xsd:complexType name="UIProcessForm">
    <xsd:annotation>
      <xsd:documentation>The root in which all other elements are embedded. Appears as a diagram.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence minOccurs="0" maxOccurs="1">
      <!-- Relationship: UIProcessFormHasFormResources -->
      <xsd:element name="formResources" minOccurs="0" maxOccurs="1">
        <xsd:annotation>
          <xsd:documentation>Instances of UIProcessFormHasFormResources</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:choice minOccurs="0" maxOccurs="unbounded" >
              <xsd:element ref="uIProcessFormHasFormResources">
                <xsd:annotation>
                  <xsd:documentation>[Relationship deriving from UIProcessFormHasFormResources needs to be serialized in full-form]</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element ref="formResource" >
                <xsd:annotation>
                  <xsd:documentation>[Target role-player]</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:choice>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <!-- Relationship: UIProcessFormHasFormAction -->
      <xsd:element name="formAction" minOccurs="0" maxOccurs="1">
        <xsd:annotation>
          <xsd:documentation>Instance of UIProcessFormHasFormAction</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:choice minOccurs="0" maxOccurs="1" >
              <xsd:element ref="uIProcessFormHasFormAction">
                <xsd:annotation>
                  <xsd:documentation>[Relationship deriving from UIProcessFormHasFormAction needs to be serialized in full-form]</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element ref="formAction" >
                <xsd:annotation>
                  <xsd:documentation>[Target role-player]</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:choice>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <!-- Id -->
    <xsd:attribute name="Id" type="xsd:string">
      <xsd:annotation>
        <xsd:documentation>Instance Guid of this element, needed because SerializeId is set to true.</xsd:documentation>
      </xsd:annotation>
    </xsd:attribute>
    <!-- dslVersion -->
    <xsd:attribute name="dslVersion" type="xsd:string">
      <xsd:annotation>
        <xsd:documentation>Version of the model serialized in this file.</xsd:documentation>
      </xsd:annotation>
    </xsd:attribute>
    <!-- Property: Name -->
    <xsd:attribute name="name" type="xsd:string" />
    <!-- Property: Version -->
    <xsd:attribute name="version" type="xsd:string" />
    <!-- Property: CreatedBy -->
    <xsd:attribute name="createdBy" type="xsd:string" />
    <!-- Property: CreatedDate -->
    <xsd:attribute name="createdDate" type="xsd:string" />
    <!-- Property: GivenBy -->
    <xsd:attribute name="givenBy" type="xsd:string" />
    <!-- Property: DateGiven -->
    <xsd:attribute name="dateGiven" type="xsd:string" />
    <!-- Property: ReadOnly -->
    <xsd:attribute name="readOnly" type="xsd:boolean" />
  </xsd:complexType>
  
  <!-- UIProcessForm Moniker -->
  <xsd:element name="uIProcessFormMoniker" type="UIProcessFormMoniker" />
  <xsd:complexType name="UIProcessFormMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for UIProcessForm instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:attribute name="Id" type="xsd:string" >
      <xsd:annotation>
        <xsd:documentation>Attribute to store the moniker string.</xsd:documentation>
      </xsd:annotation>
    </xsd:attribute>
  </xsd:complexType>
  
  <!-- FormResource -->
  <xsd:element name="formResource" type="FormResource" />
  <xsd:complexType name="FormResource">
    <xsd:annotation>
      <xsd:documentation>Elements embedded in the model. Appear as boxes on the diagram.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence minOccurs="0" maxOccurs="1">
      <!-- Relationship: EntryTransition -->
      <xsd:element name="next" minOccurs="0" maxOccurs="1">
        <xsd:annotation>
          <xsd:documentation>Instance of EntryTransition</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:choice minOccurs="0" maxOccurs="1" >
              <xsd:element ref="entryTransition">
                <xsd:annotation>
                  <xsd:documentation>[Relationship deriving from EntryTransition needs to be serialized in full-form]</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element ref="formResourceMoniker" >
                <xsd:annotation>
                  <xsd:documentation>[Target role-player]</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:choice>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <!-- Property: Name -->
    <xsd:attribute name="name" type="xsd:string" use="required" />
    <!-- Property: Title -->
    <xsd:attribute name="title" type="xsd:string" />
    <!-- Property: Prompt -->
    <xsd:attribute name="prompt" type="xsd:string" />
    <!-- Property: Completed -->
    <xsd:attribute name="completed" type="xsd:boolean" />
    <!-- Property: Required -->
    <xsd:attribute name="required" type="xsd:boolean" />
  </xsd:complexType>
  
  <!-- FormResource Moniker -->
  <xsd:element name="formResourceMoniker" type="FormResourceMoniker" />
  <xsd:complexType name="FormResourceMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for FormResource instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:attribute name="name" type="xsd:string" >
      <xsd:annotation>
        <xsd:documentation>Attribute to store the moniker string.</xsd:documentation>
      </xsd:annotation>
    </xsd:attribute>
  </xsd:complexType>
  
  <!-- AddressEntry -->
  <xsd:element name="addressEntry" type="AddressEntry" substitutionGroup="formResource" />
  <xsd:complexType name="AddressEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: Address1 -->
        <xsd:attribute name="address1" type="xsd:string" />
        <!-- Property: Address2 -->
        <xsd:attribute name="address2" type="xsd:string" />
        <!-- Property: City -->
        <xsd:attribute name="city" type="xsd:string" />
        <!-- Property: State -->
        <xsd:attribute name="state" type="xsd:string" />
        <!-- Property: CountryCode -->
        <xsd:attribute name="countryCode" type="xsd:string" />
        <!-- Property: PostalCode -->
        <xsd:attribute name="postalCode" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- AddressEntry Moniker -->
  <xsd:element name="addressEntryMoniker" type="AddressEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="AddressEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for AddressEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- AddressEntryNA -->
  <xsd:element name="addressEntryNA" type="AddressEntryNA" substitutionGroup="addressEntry" />
  <xsd:complexType name="AddressEntryNA">
    <xsd:complexContent>
      <xsd:extension base="AddressEntry">
        <!-- Property: NotApplicable -->
        <xsd:attribute name="notApplicable" type="xsd:boolean" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- AddressEntryNA Moniker -->
  <xsd:element name="addressEntryNAMoniker" type="AddressEntryNAMoniker" substitutionGroup="addressEntryMoniker" />
  <xsd:complexType name="AddressEntryNAMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for AddressEntryNA instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="AddressEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DateEntry -->
  <xsd:element name="dateEntry" type="DateEntry" substitutionGroup="formResource" />
  <xsd:complexType name="DateEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: Date -->
        <xsd:attribute name="date" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DateEntry Moniker -->
  <xsd:element name="dateEntryMoniker" type="DateEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="DateEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for DateEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DateEntryNA -->
  <xsd:element name="dateEntryNA" type="DateEntryNA" substitutionGroup="dateEntry" />
  <xsd:complexType name="DateEntryNA">
    <xsd:complexContent>
      <xsd:extension base="DateEntry">
        <!-- Property: NotApplicable -->
        <xsd:attribute name="notApplicable" type="xsd:boolean" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DateEntryNA Moniker -->
  <xsd:element name="dateEntryNAMoniker" type="DateEntryNAMoniker" substitutionGroup="dateEntryMoniker" />
  <xsd:complexType name="DateEntryNAMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for DateEntryNA instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="DateEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DateTimeEntry -->
  <xsd:element name="dateTimeEntry" type="DateTimeEntry" substitutionGroup="dateEntry" />
  <xsd:complexType name="DateTimeEntry">
    <xsd:complexContent>
      <xsd:extension base="DateEntry">
        <!-- Property: Time -->
        <xsd:attribute name="time" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DateTimeEntry Moniker -->
  <xsd:element name="dateTimeEntryMoniker" type="DateTimeEntryMoniker" substitutionGroup="dateEntryMoniker" />
  <xsd:complexType name="DateTimeEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for DateTimeEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="DateEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DateTimeEntryNA -->
  <xsd:element name="dateTimeEntryNA" type="DateTimeEntryNA" substitutionGroup="dateTimeEntry" />
  <xsd:complexType name="DateTimeEntryNA">
    <xsd:complexContent>
      <xsd:extension base="DateTimeEntry">
        <!-- Property: NotApplicable -->
        <xsd:attribute name="notApplicable" type="xsd:boolean" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DateTimeEntryNA Moniker -->
  <xsd:element name="dateTimeEntryNAMoniker" type="DateTimeEntryNAMoniker" substitutionGroup="dateTimeEntryMoniker" />
  <xsd:complexType name="DateTimeEntryNAMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for DateTimeEntryNA instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="DateTimeEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- GraphicDisplay -->
  <xsd:element name="graphicDisplay" type="GraphicDisplay" substitutionGroup="formResource" />
  <xsd:complexType name="GraphicDisplay">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: ImageBytes -->
        <xsd:attribute name="imageBytes" type="xsd:string" />
        <!-- Property: FullScreen -->
        <xsd:attribute name="fullScreen" type="xsd:boolean" />
        <!-- Property: DisplayMode -->
        <xsd:attribute name="displayMode" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- GraphicDisplay Moniker -->
  <xsd:element name="graphicDisplayMoniker" type="GraphicDisplayMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="GraphicDisplayMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for GraphicDisplay instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- GraphicAnnotation -->
  <xsd:element name="graphicAnnotation" type="GraphicAnnotation" substitutionGroup="graphicDisplay" />
  <xsd:complexType name="GraphicAnnotation">
    <xsd:complexContent>
      <xsd:extension base="GraphicDisplay">
        <!-- Property: AnnotationBytes -->
        <xsd:attribute name="annotationBytes" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- GraphicAnnotation Moniker -->
  <xsd:element name="graphicAnnotationMoniker" type="GraphicAnnotationMoniker" substitutionGroup="graphicDisplayMoniker" />
  <xsd:complexType name="GraphicAnnotationMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for GraphicAnnotation instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="GraphicDisplayMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- SelectEntry -->
  <xsd:element name="selectEntry" type="SelectEntry" substitutionGroup="formResource" />
  <xsd:complexType name="SelectEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: Options -->
        <xsd:attribute name="options" type="xsd:string" />
        <!-- Property: Selections -->
        <xsd:attribute name="selections" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- SelectEntry Moniker -->
  <xsd:element name="selectEntryMoniker" type="SelectEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="SelectEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for SelectEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- SingleSelectEntry -->
  <xsd:element name="singleSelectEntry" type="SingleSelectEntry" substitutionGroup="selectEntry" />
  <xsd:complexType name="SingleSelectEntry">
    <xsd:complexContent>
      <xsd:extension base="SelectEntry">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- SingleSelectEntry Moniker -->
  <xsd:element name="singleSelectEntryMoniker" type="SingleSelectEntryMoniker" substitutionGroup="selectEntryMoniker" />
  <xsd:complexType name="SingleSelectEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for SingleSelectEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="SelectEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- SingleSelectOtherEntry -->
  <xsd:element name="singleSelectOtherEntry" type="SingleSelectOtherEntry" substitutionGroup="singleSelectEntry" />
  <xsd:complexType name="SingleSelectOtherEntry">
    <xsd:complexContent>
      <xsd:extension base="SingleSelectEntry">
        <!-- Property: OtherSelected -->
        <xsd:attribute name="otherSelected" type="xsd:boolean" />
        <!-- Property: OtherValue -->
        <xsd:attribute name="otherValue" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- SingleSelectOtherEntry Moniker -->
  <xsd:element name="singleSelectOtherEntryMoniker" type="SingleSelectOtherEntryMoniker" substitutionGroup="singleSelectEntryMoniker" />
  <xsd:complexType name="SingleSelectOtherEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for SingleSelectOtherEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="SingleSelectEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- MultiSelectEntry -->
  <xsd:element name="multiSelectEntry" type="MultiSelectEntry" substitutionGroup="selectEntry" />
  <xsd:complexType name="MultiSelectEntry">
    <xsd:complexContent>
      <xsd:extension base="SelectEntry">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- MultiSelectEntry Moniker -->
  <xsd:element name="multiSelectEntryMoniker" type="MultiSelectEntryMoniker" substitutionGroup="selectEntryMoniker" />
  <xsd:complexType name="MultiSelectEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for MultiSelectEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="SelectEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- MultiSelectOtherEntry -->
  <xsd:element name="multiSelectOtherEntry" type="MultiSelectOtherEntry" substitutionGroup="multiSelectEntry" />
  <xsd:complexType name="MultiSelectOtherEntry">
    <xsd:complexContent>
      <xsd:extension base="MultiSelectEntry">
        <!-- Property: OtherSelected -->
        <xsd:attribute name="otherSelected" type="xsd:boolean" />
        <!-- Property: OtherValue -->
        <xsd:attribute name="otherValue" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- MultiSelectOtherEntry Moniker -->
  <xsd:element name="multiSelectOtherEntryMoniker" type="MultiSelectOtherEntryMoniker" substitutionGroup="multiSelectEntryMoniker" />
  <xsd:complexType name="MultiSelectOtherEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for MultiSelectOtherEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="MultiSelectEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- NameEntry -->
  <xsd:element name="nameEntry" type="NameEntry" substitutionGroup="formResource" />
  <xsd:complexType name="NameEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: NameTitle -->
        <xsd:attribute name="nameTitle" type="xsd:string" />
        <!-- Property: Given -->
        <xsd:attribute name="given" type="xsd:string" />
        <!-- Property: Middle -->
        <xsd:attribute name="middle" type="xsd:string" />
        <!-- Property: Family -->
        <xsd:attribute name="family" type="xsd:string" />
        <!-- Property: Suffix -->
        <xsd:attribute name="suffix" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- NameEntry Moniker -->
  <xsd:element name="nameEntryMoniker" type="NameEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="NameEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for NameEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- NoteEntry -->
  <xsd:element name="noteEntry" type="NoteEntry" substitutionGroup="formResource" />
  <xsd:complexType name="NoteEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: NoteText -->
        <xsd:attribute name="noteText" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- NoteEntry Moniker -->
  <xsd:element name="noteEntryMoniker" type="NoteEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="NoteEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for NoteEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- NumberEntry -->
  <xsd:element name="numberEntry" type="NumberEntry" substitutionGroup="formResource" />
  <xsd:complexType name="NumberEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: NumberValue -->
        <xsd:attribute name="numberValue" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- NumberEntry Moniker -->
  <xsd:element name="numberEntryMoniker" type="NumberEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="NumberEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for NumberEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- NumberEntryNA -->
  <xsd:element name="numberEntryNA" type="NumberEntryNA" substitutionGroup="numberEntry" />
  <xsd:complexType name="NumberEntryNA">
    <xsd:complexContent>
      <xsd:extension base="NumberEntry">
        <!-- Property: NotApplicable -->
        <xsd:attribute name="notApplicable" type="xsd:boolean" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- NumberEntryNA Moniker -->
  <xsd:element name="numberEntryNAMoniker" type="NumberEntryNAMoniker" substitutionGroup="numberEntryMoniker" />
  <xsd:complexType name="NumberEntryNAMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for NumberEntryNA instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NumberEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PasswordEntry -->
  <xsd:element name="passwordEntry" type="PasswordEntry" substitutionGroup="formResource" />
  <xsd:complexType name="PasswordEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: Password -->
        <xsd:attribute name="password" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PasswordEntry Moniker -->
  <xsd:element name="passwordEntryMoniker" type="PasswordEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="PasswordEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for PasswordEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PhoneEntry -->
  <xsd:element name="phoneEntry" type="PhoneEntry" substitutionGroup="formResource" />
  <xsd:complexType name="PhoneEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: CountryCode -->
        <xsd:attribute name="countryCode" type="xsd:string" />
        <!-- Property: NationalCode -->
        <xsd:attribute name="nationalCode" type="xsd:string" />
        <!-- Property: AreaCode -->
        <xsd:attribute name="areaCode" type="xsd:string" />
        <!-- Property: Number -->
        <xsd:attribute name="number" type="xsd:string" />
        <!-- Property: Extension -->
        <xsd:attribute name="extension" type="xsd:string" />
        <!-- Property: Pin -->
        <xsd:attribute name="pin" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PhoneEntry Moniker -->
  <xsd:element name="phoneEntryMoniker" type="PhoneEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="PhoneEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for PhoneEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PhoneEntryNA -->
  <xsd:element name="phoneEntryNA" type="PhoneEntryNA" substitutionGroup="phoneEntry" />
  <xsd:complexType name="PhoneEntryNA">
    <xsd:complexContent>
      <xsd:extension base="PhoneEntry">
        <!-- Property: NotApplicable -->
        <xsd:attribute name="notApplicable" type="xsd:boolean" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PhoneEntryNA Moniker -->
  <xsd:element name="phoneEntryNAMoniker" type="PhoneEntryNAMoniker" substitutionGroup="phoneEntryMoniker" />
  <xsd:complexType name="PhoneEntryNAMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for PhoneEntryNA instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="PhoneEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PostalCodeEntry -->
  <xsd:element name="postalCodeEntry" type="PostalCodeEntry" substitutionGroup="formResource" />
  <xsd:complexType name="PostalCodeEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: PostalCode -->
        <xsd:attribute name="postalCode" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PostalCodeEntry Moniker -->
  <xsd:element name="postalCodeEntryMoniker" type="PostalCodeEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="PostalCodeEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for PostalCodeEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PostalCodeEntryNA -->
  <xsd:element name="postalCodeEntryNA" type="PostalCodeEntryNA" substitutionGroup="postalCodeEntry" />
  <xsd:complexType name="PostalCodeEntryNA">
    <xsd:complexContent>
      <xsd:extension base="PostalCodeEntry">
        <!-- Property: NotApplicable -->
        <xsd:attribute name="notApplicable" type="xsd:boolean" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- PostalCodeEntryNA Moniker -->
  <xsd:element name="postalCodeEntryNAMoniker" type="PostalCodeEntryNAMoniker" substitutionGroup="postalCodeEntryMoniker" />
  <xsd:complexType name="PostalCodeEntryNAMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for PostalCodeEntryNA instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="PostalCodeEntryMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- SignatureCaptureEntry -->
  <xsd:element name="signatureCaptureEntry" type="SignatureCaptureEntry" substitutionGroup="formResource" />
  <xsd:complexType name="SignatureCaptureEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: SignatureBytes -->
        <xsd:attribute name="signatureBytes" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- SignatureCaptureEntry Moniker -->
  <xsd:element name="signatureCaptureEntryMoniker" type="SignatureCaptureEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="SignatureCaptureEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for SignatureCaptureEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- TextEntry -->
  <xsd:element name="textEntry" type="TextEntry" substitutionGroup="formResource" />
  <xsd:complexType name="TextEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: TextValue -->
        <xsd:attribute name="textValue" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- TextEntry Moniker -->
  <xsd:element name="textEntryMoniker" type="TextEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="TextEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for TextEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- UserLoginEntry -->
  <xsd:element name="userLoginEntry" type="UserLoginEntry" substitutionGroup="formResource" />
  <xsd:complexType name="UserLoginEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: UserName -->
        <xsd:attribute name="userName" type="xsd:string" />
        <!-- Property: Password -->
        <xsd:attribute name="password" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- UserLoginEntry Moniker -->
  <xsd:element name="userLoginEntryMoniker" type="UserLoginEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="UserLoginEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for UserLoginEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- YesNoEntry -->
  <xsd:element name="yesNoEntry" type="YesNoEntry" substitutionGroup="formResource" />
  <xsd:complexType name="YesNoEntry">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: Response -->
        <xsd:attribute name="response" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- YesNoEntry Moniker -->
  <xsd:element name="yesNoEntryMoniker" type="YesNoEntryMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="YesNoEntryMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for YesNoEntry instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- FormAction -->
  <xsd:element name="formAction" type="FormAction" />
  <xsd:complexType name="FormAction">
    <!-- Id -->
    <xsd:attribute name="Id" type="xsd:string">
      <xsd:annotation>
        <xsd:documentation>Instance Guid of this element, needed because SerializeId is set to true.</xsd:documentation>
      </xsd:annotation>
    </xsd:attribute>
    <!-- Property: Name -->
    <xsd:attribute name="name" type="xsd:string" />
    <!-- Property: ActionType -->
    <xsd:attribute name="actionType" type="xsd:string" />
    <!-- Property: EndPoint -->
    <xsd:attribute name="endPoint" type="xsd:string" />
  </xsd:complexType>
  
  <!-- FormAction Moniker -->
  <xsd:element name="formActionMoniker" type="FormActionMoniker" />
  <xsd:complexType name="FormActionMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for FormAction instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:attribute name="Id" type="xsd:string" >
      <xsd:annotation>
        <xsd:documentation>Attribute to store the moniker string.</xsd:documentation>
      </xsd:annotation>
    </xsd:attribute>
  </xsd:complexType>
  
  <!-- DataField -->
  <xsd:element name="dataField" type="DataField" substitutionGroup="formResource" />
  <xsd:complexType name="DataField">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: FieldValue -->
        <xsd:attribute name="fieldValue" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- DataField Moniker -->
  <xsd:element name="dataFieldMoniker" type="DataFieldMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="DataFieldMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for DataField instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- Conditional -->
  <xsd:element name="conditional" type="Conditional" substitutionGroup="formResource" />
  <xsd:complexType name="Conditional">
    <xsd:complexContent>
      <xsd:extension base="FormResource">
        <!-- Property: Expression -->
        <xsd:attribute name="expression" type="xsd:string" />
        <!-- Property: JumpToFormResource -->
        <xsd:attribute name="jumpToFormResource" type="xsd:string" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- Conditional Moniker -->
  <xsd:element name="conditionalMoniker" type="ConditionalMoniker" substitutionGroup="formResourceMoniker" />
  <xsd:complexType name="ConditionalMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for Conditional instance.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FormResourceMoniker">
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  
  <!-- UIProcessFormHasFormResources -->
  <xsd:element name="uIProcessFormHasFormResources" abstract="true" type="UIProcessFormHasFormResources" />
  <xsd:complexType name="UIProcessFormHasFormResources" abstract="true" >
    <xsd:annotation>
      <xsd:documentation>Embedding relationship between the Model and Elements</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence minOccurs="0" maxOccurs="1">
      <!-- Target end FormResource -->
      <xsd:element ref="formResource" minOccurs="1" maxOccurs="1">
        <xsd:annotation>
          <xsd:documentation>[Target role-player]</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  
  <!-- UIProcessFormHasFormResources Moniker -->
  <xsd:element name="uIProcessFormHasFormResourcesMoniker" abstract="true" type="UIProcessFormHasFormResourcesMoniker" />
  <xsd:complexType name="UIProcessFormHasFormResourcesMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for UIProcessFormHasFormResources instance.</xsd:documentation>
    </xsd:annotation>
  </xsd:complexType>
  
  <!-- EntryTransition -->
  <xsd:element name="entryTransition" abstract="true" type="EntryTransition" />
  <xsd:complexType name="EntryTransition" abstract="true" >
    <xsd:annotation>
      <xsd:documentation>Reference relationship between Elements.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence minOccurs="0" maxOccurs="1">
      <!-- Target end FormResource -->
      <xsd:element ref="formResourceMoniker" minOccurs="1" maxOccurs="1">
        <xsd:annotation>
          <xsd:documentation>[Target role-player]</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  
  <!-- EntryTransition Moniker -->
  <xsd:element name="entryTransitionMoniker" abstract="true" type="EntryTransitionMoniker" />
  <xsd:complexType name="EntryTransitionMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for EntryTransition instance.</xsd:documentation>
    </xsd:annotation>
  </xsd:complexType>
  
  <!-- UIProcessFormHasFormAction -->
  <xsd:element name="uIProcessFormHasFormAction" abstract="true" type="UIProcessFormHasFormAction" />
  <xsd:complexType name="UIProcessFormHasFormAction" abstract="true" >
    <xsd:sequence minOccurs="0" maxOccurs="1">
      <!-- Target end FormAction -->
      <xsd:element ref="formAction" minOccurs="1" maxOccurs="1">
        <xsd:annotation>
          <xsd:documentation>[Target role-player]</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  
  <!-- UIProcessFormHasFormAction Moniker -->
  <xsd:element name="uIProcessFormHasFormActionMoniker" abstract="true" type="UIProcessFormHasFormActionMoniker" />
  <xsd:complexType name="UIProcessFormHasFormActionMoniker">
    <xsd:annotation>
      <xsd:documentation>Moniker for UIProcessFormHasFormAction instance.</xsd:documentation>
    </xsd:annotation>
  </xsd:complexType>
  
</xsd:schema>

